package com.zmh.service.timer;

import java.util.List;

import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;

import com.zmh.common.DateUtil;
import com.zmh.dao.MessageInfoDao;
import com.zmh.model.wechat.httpClient.MessageInfo;
import com.zmh.service.httpclient.WeChat;
import com.zmh.service.wechat.WeChatService;

/** 
 * @author zhoumh
 * @version 创建时间：2017年11月5日 下午3:22:29 
 * @Description 
*/
@Service
@EnableScheduling
public class WeChatTimer {
	private static Logger logger = LoggerFactory.getLogger(WeChatTimer.class);
	@Autowired
	private MessageInfoDao messageInfoDao;
	@Autowired
	private WeChat wechat;
	@Autowired
	private WeChatService weChatService;
	/**
	 * 监控消息列表发送未发送的消息
	 * @return: void
	 * @author: zhoumh
	 * @version: 创建时间：2017年11月5日 下午3:30:29 
	 * @Description:
	 */
//	@Scheduled(cron = "0 0/1 * * * ?")
	public void sendMessage() {
		logger.info("开始发送消息");
		weChatService.sendMessage();
	}
	/**
	 * 每隔一小时刷新一下管理页面，保持登陆状态，并发送
	 * @author: zhoumh
	 * @version: 创建时间：2017年11月10日 下午8:34:07 
	 * @Description:
	 */
//	@Scheduled(cron = "0 0 0/1 * * ?")
	public void refreshLogin() {
		logger.info("开始刷新登陆状态： "+"");
		wechat.refreshLogin();
		logger.info("检查微信最后一条消息状态： "+"");
		weChatService.checkLastMessageTime();
		// 发送图文消息
//		weChatService.punctually();
	}
	/**
	 * 每隔一小时调度一次最后一条消息获取
	 * @return: void
	 * @author: zhoumh
	 * @version: 创建时间：2017年11月14日 上午10:50:49 
	 * @Description:随便设置一个分钟数错开任务启动时间
	 */
//	@Scheduled(cron = "0 0 0/1 * * ?")
	public void checkLastMessageTime(){
		logger.info("检查微信最后一条消息状态： "+"");
		weChatService.checkLastMessageTime();
	}
}
